package com.letian.record.mapper;

import java.util.List;
import com.letian.record.domain.RecordGenealogy;

/**
 * 族谱Mapper接口
 * 
 * @author bmz
 * @date 2025-07-20
 */
public interface RecordGenealogyMapper 
{
    /**
     * 查询族谱
     * 
     * @param genealogyId 族谱主键
     * @return 族谱
     */
    public RecordGenealogy selectRecordGenealogyByGenealogyId(Long genealogyId);

    /**
     * 查询族谱列表
     * 
     * @param recordGenealogy 族谱
     * @return 族谱集合
     */
    public List<RecordGenealogy> selectRecordGenealogyList(RecordGenealogy recordGenealogy);

    /**
     * 新增族谱
     * 
     * @param recordGenealogy 族谱
     * @return 结果
     */
    public int insertRecordGenealogy(RecordGenealogy recordGenealogy);

    /**
     * 修改族谱
     * 
     * @param recordGenealogy 族谱
     * @return 结果
     */
    public int updateRecordGenealogy(RecordGenealogy recordGenealogy);

    /**
     * 修改族谱
     *
     * @param genealogyId genealogyId
     * @return 结果
     */
    public int updateRecordGenealogyCount(Long genealogyId);

    /**
     * 删除族谱
     * 
     * @param genealogyId 族谱主键
     * @return 结果
     */
    public int deleteRecordGenealogyByGenealogyId(Long genealogyId);

    /**
     * 批量删除族谱
     * 
     * @param genealogyIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteRecordGenealogyByGenealogyIds(Long[] genealogyIds);
}
